home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1994 August: Tool Chest / Dev.CD Aug 94.toast / New System Software Extensions / OpenDoc A6 / SOM / OpenDoc and SOM / C / Undo.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-04-19  |  9.5 KB  |  328 lines  |  [TEXT/MPS ]

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: Locrian:WWDCSun:C:Undo.h.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: somc/smemit.c
  7.  *     SOM Emitter emith.dll: somc/smmain.c
  8.  */
  9.  
  10. /*
  11.  * 
  12.  *  Constants
  13.  * 
  14.  * 
  15.  *  Classes defined in this interface
  16.  * 
  17.  */
  18.  
  19.  
  20. #ifndef SOM_ODUndo_h
  21. #define SOM_ODUndo_h
  22.  
  23.  
  24. #include <som.h>
  25.  
  26. /*
  27.  * -- This emitter treats Method Tokens as Thunks by default
  28.  * -- Use the sc modifier "nothunks" to change this default
  29.  */
  30. #undef somresolve_
  31. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  32.  
  33. /*
  34.  * Define the class name as an object type
  35.  */
  36. #ifndef ODUndo
  37. #define ODUndo SOMObject
  38. #endif
  39. #include <ODObject.h>
  40.  
  41. /*
  42.  * Start of user-defined types:
  43.  */
  44. #ifndef ODExtension
  45.     #define ODExtension SOMObject
  46. #endif /* ODExtension */
  47. #ifndef ODPart
  48.     #define ODPart SOMObject
  49. #endif /* ODPart */
  50.  
  51. /*
  52.  * End of user-defined types.
  53.  */
  54.  
  55. #define ODUndo_MajorVersion 0
  56. #define ODUndo_MinorVersion 0
  57.  
  58. /*
  59.  * External name shortening if required
  60.  */
  61. #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
  62. #define ODUndoNewClass c
  63. #define ODUndoClassData d
  64. #define ODUndoCClassData x
  65. #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
  66. /*--------------Migration------------*/
  67. #define ODUndo_classObj ODUndoClassData.classObject
  68. #define _ODUndo ODUndo_classObj
  69.  
  70. /*
  71.  * Declare the class creation procedure
  72.  */
  73.  
  74. #if applec ^ PRAGMA_LIB_EXPORT
  75. #pragma lib_export on
  76. #endif
  77.  
  78. SOMEXTERN SOMClass * SOMLINK ODUndoNewClass(integer4 somtmajorVersion,
  79.         integer4 somtminorVersion);
  80.  
  81. /*
  82.  * Declare the class data structure
  83.  */
  84. SOMEXTERN struct ODUndoClassDataStructure {
  85.     SOMAny *classObject;
  86.     somMToken InitUndo;
  87.     somMToken AddActionToHistory;
  88.     somMToken Undo;
  89.     somMToken Redo;
  90.     somMToken MarkActionHistory;
  91.     somMToken ClearActionHistory;
  92.     somMToken ClearRedoHistory;
  93.     somMToken PeekUndoHistory;
  94.     somMToken PeekRedoHistory;
  95. }
  96. #ifdef SOM_NO_DATA_EXPORTS
  97.     * ODUndoGetClassData ( void );
  98. #   undef ODUndoClassData
  99. #   define ODUndoClassData (*ODUndoGetClassData())
  100. #else
  101.       ODUndoClassData;
  102. #endif /* SOM_NO_DATA_EXPORTS */
  103.  
  104. #if applec ^ PRAGMA_LIB_EXPORT
  105. #pragma lib_export off
  106. #endif
  107.  
  108.  
  109. /*
  110.  * Declare the C specific class data structure
  111.  */
  112. SOMEXTERN struct ODUndoCClassDataStructure {
  113.     somMethodTabs parentMtab;
  114.     somDToken instanceDataToken;
  115. } ODUndoCClassData;
  116.  
  117. /*
  118.  * New and Renew macros for ODUndo
  119.  */
  120. #define ODUndoNew() \
  121.     ( ( ! (ODUndoClassData.classObject) && \
  122.         (ODUndoNewClass(ODUndo_MajorVersion, ODUndo_MinorVersion)) ), \
  123.       (_somNew(ODUndoClassData.classObject)) )
  124. #define ODUndoRenew(buf) \
  125.     ( _somRenew(ODUndoClassData.classObject, buf) )
  126.  
  127. /*
  128.  * Override method: somInit
  129.  */
  130. #define ODUndo_somInit(somSelf) \
  131.     SOMObject_somInit(somSelf)
  132.  
  133. /*
  134.  * Override method: somUninit
  135.  */
  136. #define ODUndo_somUninit(somSelf) \
  137.     SOMObject_somUninit(somSelf)
  138.  
  139. /*
  140.  * Override method: Purge
  141.  */
  142. #define ODUndo_Purge(somSelf,ev,size) \
  143.     ODObject_Purge(somSelf,ev,size)
  144.  
  145. /*
  146.  * New Method: AddActionToHistory
  147.  */
  148. typedef void   (SOMLINK *somTD_ODUndo_AddActionToHistory)(ODUndo *somSelf, Environment *ev,
  149.         ODPart* whichPart,
  150.         ODActionData actionData,
  151.         ODActionType actionType,
  152.         ODName undoActionLabel,
  153.         ODName redoActionLabel);
  154. #define somMD_ODUndo_AddActionToHistory "::ODUndo::AddActionToHistory"
  155. #define ODUndo_AddActionToHistory(somSelf,ev,whichPart,actionData,actionType,undoActionLabel,redoActionLabel) \
  156.     (SOM_Resolve(somSelf, ODUndo, AddActionToHistory) \
  157.     (somSelf,ev,whichPart,actionData,actionType,undoActionLabel,redoActionLabel))
  158. #ifndef SOMGD_AddActionToHistory
  159.     #if (defined(_AddActionToHistory) || defined(__AddActionToHistory))
  160.         #undef _AddActionToHistory
  161.         #undef __AddActionToHistory
  162.         #define SOMGD_AddActionToHistory 1
  163.     #else
  164.         #define _AddActionToHistory ODUndo_AddActionToHistory
  165.     #endif /* _AddActionToHistory */
  166. #endif /* SOMGD_AddActionToHistory */
  167.  
  168. /*
  169.  * New Method: Undo
  170.  */
  171. typedef void   (SOMLINK *somTD_ODUndo_Undo)(ODUndo *somSelf, Environment *ev);
  172. #define somMD_ODUndo_Undo "::ODUndo::Undo"
  173. #define ODUndo_Undo(somSelf,ev) \
  174.     (SOM_Resolve(somSelf, ODUndo, Undo) \
  175.     (somSelf,ev))
  176. #ifndef SOMGD_Undo
  177.     #if (defined(_Undo) || defined(__Undo))
  178.         #undef _Undo
  179.         #undef __Undo
  180.         #define SOMGD_Undo 1
  181.     #else
  182.         #define _Undo ODUndo_Undo
  183.     #endif /* _Undo */
  184. #endif /* SOMGD_Undo */
  185.  
  186. /*
  187.  * New Method: Redo
  188.  */
  189. typedef void   (SOMLINK *somTD_ODUndo_Redo)(ODUndo *somSelf, Environment *ev);
  190. #define somMD_ODUndo_Redo "::ODUndo::Redo"
  191. #define ODUndo_Redo(somSelf,ev) \
  192.     (SOM_Resolve(somSelf, ODUndo, Redo) \
  193.     (somSelf,ev))
  194. #ifndef SOMGD_Redo
  195.     #if (defined(_Redo) || defined(__Redo))
  196.         #undef _Redo
  197.         #undef __Redo
  198.         #define SOMGD_Redo 1
  199.     #else
  200.         #define _Redo ODUndo_Redo
  201.     #endif /* _Redo */
  202. #endif /* SOMGD_Redo */
  203.  
  204. /*
  205.  * New Method: MarkActionHistory
  206.  */
  207. typedef void   (SOMLINK *somTD_ODUndo_MarkActionHistory)(ODUndo *somSelf, Environment *ev);
  208. #define somMD_ODUndo_MarkActionHistory "::ODUndo::MarkActionHistory"
  209. #define ODUndo_MarkActionHistory(somSelf,ev) \
  210.     (SOM_Resolve(somSelf, ODUndo, MarkActionHistory) \
  211.     (somSelf,ev))
  212. #ifndef SOMGD_MarkActionHistory
  213.     #if (defined(_MarkActionHistory) || defined(__MarkActionHistory))
  214.         #undef _MarkActionHistory
  215.         #undef __MarkActionHistory
  216.         #define SOMGD_MarkActionHistory 1
  217.     #else
  218.         #define _MarkActionHistory ODUndo_MarkActionHistory
  219.     #endif /* _MarkActionHistory */
  220. #endif /* SOMGD_MarkActionHistory */
  221.  
  222. /*
  223.  * New Method: ClearActionHistory
  224.  */
  225. typedef void   (SOMLINK *somTD_ODUndo_ClearActionHistory)(ODUndo *somSelf, Environment *ev,
  226.         ODRespectMarksChoices respectMarks);
  227. #define somMD_ODUndo_ClearActionHistory "::ODUndo::ClearActionHistory"
  228. #define ODUndo_ClearActionHistory(somSelf,ev,respectMarks) \
  229.     (SOM_Resolve(somSelf, ODUndo, ClearActionHistory) \
  230.     (somSelf,ev,respectMarks))
  231. #ifndef SOMGD_ClearActionHistory
  232.     #if (defined(_ClearActionHistory) || defined(__ClearActionHistory))
  233.         #undef _ClearActionHistory
  234.         #undef __ClearActionHistory
  235.         #define SOMGD_ClearActionHistory 1
  236.     #else
  237.         #define _ClearActionHistory ODUndo_ClearActionHistory
  238.     #endif /* _ClearActionHistory */
  239. #endif /* SOMGD_ClearActionHistory */
  240.  
  241. /*
  242.  * New Method: ClearRedoHistory
  243.  */
  244. typedef void   (SOMLINK *somTD_ODUndo_ClearRedoHistory)(ODUndo *somSelf, Environment *ev);
  245. #define somMD_ODUndo_ClearRedoHistory "::ODUndo::ClearRedoHistory"
  246. #define ODUndo_ClearRedoHistory(somSelf,ev) \
  247.     (SOM_Resolve(somSelf, ODUndo, ClearRedoHistory) \
  248.     (somSelf,ev))
  249. #ifndef SOMGD_ClearRedoHistory
  250.     #if (defined(_ClearRedoHistory) || defined(__ClearRedoHistory))
  251.         #undef _ClearRedoHistory
  252.         #undef __ClearRedoHistory
  253.         #define SOMGD_ClearRedoHistory 1
  254.     #else
  255.         #define _ClearRedoHistory ODUndo_ClearRedoHistory
  256.     #endif /* _ClearRedoHistory */
  257. #endif /* SOMGD_ClearRedoHistory */
  258.  
  259. /*
  260.  * New Method: PeekUndoHistory
  261.  */
  262. typedef ODBoolean   (SOMLINK *somTD_ODUndo_PeekUndoHistory)(ODUndo *somSelf, Environment *ev,
  263.         ODPart* part,
  264.         ODActionData* actionData,
  265.         ODActionType* actionType,
  266.         ODName* actionLabel);
  267. #define somMD_ODUndo_PeekUndoHistory "::ODUndo::PeekUndoHistory"
  268. #define ODUndo_PeekUndoHistory(somSelf,ev,part,actionData,actionType,actionLabel) \
  269.     (SOM_Resolve(somSelf, ODUndo, PeekUndoHistory) \
  270.     (somSelf,ev,part,actionData,actionType,actionLabel))
  271. #ifndef SOMGD_PeekUndoHistory
  272.     #if (defined(_PeekUndoHistory) || defined(__PeekUndoHistory))
  273.         #undef _PeekUndoHistory
  274.         #undef __PeekUndoHistory
  275.         #define SOMGD_PeekUndoHistory 1
  276.     #else
  277.         #define _PeekUndoHistory ODUndo_PeekUndoHistory
  278.     #endif /* _PeekUndoHistory */
  279. #endif /* SOMGD_PeekUndoHistory */
  280.  
  281. /*
  282.  * New Method: PeekRedoHistory
  283.  */
  284. typedef ODBoolean   (SOMLINK *somTD_ODUndo_PeekRedoHistory)(ODUndo *somSelf, Environment *ev,
  285.         ODPart** part,
  286.         ODActionData* actionData,
  287.         ODActionType* actionType,
  288.         ODName* actionLabel);
  289. #define somMD_ODUndo_PeekRedoHistory "::ODUndo::PeekRedoHistory"
  290. #define ODUndo_PeekRedoHistory(somSelf,ev,part,actionData,actionType,actionLabel) \
  291.     (SOM_Resolve(somSelf, ODUndo, PeekRedoHistory) \
  292.     (somSelf,ev,part,actionData,actionType,actionLabel))
  293. #ifndef SOMGD_PeekRedoHistory
  294.     #if (defined(_PeekRedoHistory) || defined(__PeekRedoHistory))
  295.         #undef _PeekRedoHistory
  296.         #undef __PeekRedoHistory
  297.         #define SOMGD_PeekRedoHistory 1
  298.     #else
  299.         #define _PeekRedoHistory ODUndo_PeekRedoHistory
  300.     #endif /* _PeekRedoHistory */
  301. #endif /* SOMGD_PeekRedoHistory */
  302. #ifndef SOM_DONT_USE_INHERITED_MACROS
  303. #define ODUndo_InitObject ODObject_InitObject
  304. #define ODUndo_IsInitialized ODObject_IsInitialized
  305. #define ODUndo_HasExtension ODObject_HasExtension
  306. #define ODUndo_GetExtension ODObject_GetExtension
  307. #define ODUndo_ReleaseExtension ODObject_ReleaseExtension
  308. #define ODUndo_SubClassResponsibility ODObject_SubClassResponsibility
  309. #define ODUndo_somFree SOMObject_somFree
  310. #define ODUndo_somGetClass SOMObject_somGetClass
  311. #define ODUndo_somGetClassName SOMObject_somGetClassName
  312. #define ODUndo_somGetSize SOMObject_somGetSize
  313. #define ODUndo_somIsA SOMObject_somIsA
  314. #define ODUndo_somIsInstanceOf SOMObject_somIsInstanceOf
  315. #define ODUndo_somRespondsTo SOMObject_somRespondsTo
  316. #define ODUndo_somDispatchV SOMObject_somDispatchV
  317. #define ODUndo_somDispatchL SOMObject_somDispatchL
  318. #define ODUndo_somDispatchA SOMObject_somDispatchA
  319. #define ODUndo_somDispatchD SOMObject_somDispatchD
  320. #define ODUndo_somDispatch SOMObject_somDispatch
  321. #define ODUndo_somClassDispatch SOMObject_somClassDispatch
  322. #define ODUndo_somPrintSelf SOMObject_somPrintSelf
  323. #define ODUndo_somDumpSelf SOMObject_somDumpSelf
  324. #define ODUndo_somDumpSelfInt SOMObject_somDumpSelfInt
  325. #endif /* SOM_DONT_USE_INHERITED_MACROS */
  326.  
  327. #endif       /* SOM_ODUndo_h */
  328.